package com.eascs.p2p.investor.dao;

import com.eascs.app.dao.PageResult;
import com.eascs.p2p.common.entity.InvestorEntity;

import java.util.List;
import com.eascs.p2p.common.entity.InvestorRecordEntity;
import com.eascs.p2p.common.vo.InvestorVO;

public interface InvestorDao {
	
	/**
	 * @Description: 查找投资用户
	 */
	public InvestorEntity queryInvestor(InvestorEntity investor);

	public InvestorEntity insertInvestor(InvestorEntity investor);
	
	public boolean updateInvestor(InvestorEntity investor);
	
	public List<InvestorRecordEntity> queryInvestorRecordListByInvestObjId(String investObjId);
	
	public List<InvestorRecordEntity> queryInvestorRecordList(InvestorRecordEntity investorRecord);
	
	public Integer insertInvestorRecord(InvestorRecordEntity investorRecord);
	
	public boolean updateInvestorRecord(InvestorRecordEntity investorRecord);
	
	/**
	 * @Title: findPageInvestorEntity
	 * @Description: 分页查询投资者信息
	 * @author 张庆奇
	 * @param vo
	 * @return
	 * @return PageResult<Object[]>
	 * @throws
	 * @date 2016年7月7日 上午9:52:23
	 */
	public PageResult<Object[]> findPageInvestorEntity(InvestorVO vo);
	
	
	/**
	 * @Title: getInvestorNameorMobile
	 * @Description: 用于投资者联想
	 * @author 张庆奇
	 * @param keywords
	 * @return
	 * @return List<Object[]>
	 * @throws
	 * @date 2016年7月7日 上午11:46:25
	 */
	public List<Object[]> getInvestorNameorMobile(String keywords);
	
	/**
	 * @Title: updateStatus
	 * @Description: 修改投资者状态
	 * @author 张庆奇
	 * @param id
	 * @param status
	 * @return
	 * @return boolean
	 * @throws
	 * @date 2016年7月7日 下午2:53:45
	 */
	public boolean updateStatus(String id,int status);

	/**
	 * @Title: savePasswrod
	 * @Description: 设置密码
	 * @author lwx
	 * @param id
	 * @param password
	 * @return
	 * @return boolean
	 * @throws
	 * @date 2016年7月7日 下午2:53:45
	 */
	public boolean savePasswrod(String id, String password);

	/**
	 * @Title: getPasswrod
	 * @Description: 获取密码
	 * @author lwx
	 * @param id
	 * @return
	 * @return String
	 * @throws
	 * @date 2016年7月7日 下午2:53:45
	 */
	public String getPasswrod(String id);
	
	/**
	 * 根据账号查询用户信息
	 * @param account
	 * @return
	 */
	public InvestorEntity queryInvestorByAccount(String account);
}
